package com.tedu.api.thread;

/**
 * Thread类  线程同步
 * join() 【线程之间同步】
 * 作用:允许在一个线程上等待另外一个线程执行完毕，在执行自己
 * 用法：线程名.join()，用在另外一个线程
 *
 * 线程同步:执行线程先后顺序
 * 线程异步:执行线程没有，各自完成各种线程功能!
 *
 * 模拟：下载图片【1%~100%】，显示图片功能
 *      线程 download 功能： 下载进度条 1%~100%   100毫秒
 *      线程 show     功能：  显示图片
 */
public class Thread_join {
    public static void main(String[] args) {
        //下载线程
        Thread download=new Thread(()->{
            for(int i=0;i<=100;i++) {
                System.out.println("下载：" + i + "%");
                try {
                    Thread.sleep(100);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
            }
        });
        download.start();

        //显示线程
        Thread show=new Thread(()->{
            try {
                download.join();
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
            System.out.println("下载成功");
        });
        show.start();

    }
}
